  var object = {};

  _.extend(object, Backbone.Events);

  var listener = _.clone(object);

  var rootObject = _.clone(object);
  rootObject.abba = object;

  object.on("alert", hello); //会执行

  rootObject.on('all', hello); //不会执行

  function hello() {
    $('body').append(jsonview(arguments));
  }

  listener.listenTo(object, 'all', hello); //会执行

  object.trigger("alert", "an event");

  var Person = Backbone.Model.extend({
    raise: function(amount) {
      this.household.set('income', this.household.get('income') + amount);
    }
  });
  var Wife = Person.extend();
  var Husband = Person.extend();
  var Household = Backbone.Model.extend({
    initialize: function(attrs, options) {
      this.wife = options.wife;
      this.husband = options.husband;
      this.wife.household = this.husband.household = this;
    }
  });

  var mohsen = new Husband();
  var sahar = new Wife();
  var home = new Household({
    income: 40000
  }, {
    wife: sahar,
    husband: mohsen
  });
  sahar.raise(5000);
  console.log(home.get('income')); // 45000
  mohsen.raise(3000);
  console.log(home.get('income')); // 48000

